package online.yangcloud.common.tools;

import cn.hutool.core.collection.ListUtil;
import online.yangcloud.common.model.business.list.ListSplitBusiness;

import java.util.List;

/**
 * @author zhuboyang
 * @since 2023年12月03 10:44:44
 */
public class ListTools {

    /**
     * 截取结合元素
     *
     * @param data 待截取集合
     * @param <T>  元素类型
     * @return 截取后集合
     */
    public static <T> ListSplitBusiness<T> split(List<T> data, int count) {
        List<T> tmp = ListUtil.sub(data, 0, Math.min(data.size(), count));
        List<T> sources = ListUtil.sub(data, Math.min(data.size(), count), data.size());
        return ListSplitBusiness.<T>builder().setSources(sources).setSplits(tmp);
    }

}
